<template>
    <div class="model-form">
        <el-page-header @back="goBack" content="更新产品分组">
        </el-page-header>
        <div class="model-content">
            <el-form ref="ruleForm" :rules="rules" :model="form" label-width="160px">
                <el-row :gutter="10">
                    <el-col :span="22">
                        <el-form-item label="商家名称" size="mini" prop="shop">
                            <el-select style="width: 100%;" v-model="form.shop" filterable clearable placeholder="请选择">
                                <el-option v-for="item in shopOptions" :key="item.id" :label="item.name"
                                    :value="item.id">
                                </el-option>
                            </el-select>
                        </el-form-item>

                    </el-col>
                    <el-col :span="22">
                        <el-form-item label="是否显示" size="mini" prop="showState">
                            <el-radio v-model="form.showState" label="是">是</el-radio>
                            <el-radio v-model="form.showState" label="否">否</el-radio>
                        </el-form-item>
                    </el-col>
                    <el-col :span="22">
                        <el-form-item label="排序号" size="mini" prop="sortNum">
                            <el-input-number v-model="form.sortNum" name="sortNum" type="textarea" :min="0" :max="100">
                            </el-input-number>
                        </el-form-item>

                    </el-col>
                    <el-col :span="22">
                        <el-form-item label="备注" size="mini" prop="note">
                            <el-input v-model="form.note" name="note" type="textarea"></el-input>
                        </el-form-item>

                    </el-col>
                </el-row>
                <el-row>
                    <el-col :span="24" style="text-align: right;padding-bottom: 20px;padding-top: 20px;">
                        <el-button @click="goBack">取消</el-button>
                        <el-button type="primary" @click="updateData">确定</el-button>
                    </el-col>
                </el-row>
            </el-form>
        </div>
    </div>
</template>

<script>
    import common from "@/mixins/common.js";
    var config = {};
    config.methods = {};
    config.mixins = [common];


    config.data = function () {
        return {
            form: {
                shop: '',
                name: '',
                showState: '',
                sortNum: '',
                note: ''
            },
            shopOptions: [],
            rules: {
                shop: [{
                    required: true,
                    message: '请输入商家名称',
                    trigger: 'blur'
                }],
                name: [{
                    required: true,
                    message: '请输入分组名称',
                    trigger: 'blur'
                }],
            }
        }
    };




    config.methods.updateData = function () {
        var self = this;
        this.$refs["ruleForm"].validate(function (valid) {
            if (valid) {
                self.updateDataPost();
            } else {
                console.log('error submit!!');
                return false;
            }
        });
    }

    config.methods.updateDataPost = function () {
        var self = this,
            data = this.form;
        if (this.deforeUpdateData) {
            this.deforeUpdateData();
        }
        this.postData("/tenantRest/productgroup/update.htm", data, function (res) {
            if (res.code == 0) {
                self.$message({
                    message: '更新数据成功',
                    type: 'success'
                });
                self.$router.go(-1);
            } else {
                self.$message.error(res.msg);
            }
        });
    }


    config.methods.loadShopOptions = function () {
        var self = this;
        var param = {};
        param.sortMethod = "asc";
        param.sortField = "id";
        param.level = 1;
        param.size = 500;
        param.fetch = 0;
        this.postData("/tenantRest/shop/list.htm", param, function (result) {
            if (result.code == 0) {
                self.shopOptions = result.list;
            }
        });
    }


    config.mounted = function () {
        this.loadShopOptions();

        var id = this.$route.query.id;
        var self = this;
        var data = {};
        data.id = id;
        this.postData("/tenantRest/productgroup/view.htm", data, function (res) {
            if (res.code == 0) {
                self.form = res;
            }
        });

    }


    export default config;
</script>

<style scoped>

</style>